package lanQiaoBei.数学知识.质数;
import java.io.*;
import java.util.*;
/*试除法分解质因数
题目描述：

给定 nn 个正整数 aiai，将每个数分解质因数，并按照质因数从小到大的顺序输出每个质因数的底数和指数。

输入格式

第一行包含整数 nn。

接下来 nn 行，每行包含一个正整数 aiai。

输出格式

对于每个正整数 aiai，按照从小到大的顺序输出其分解质因数后，每个质因数的底数和指数，每个底数和指数占一行。

每个正整数的质因数全部输出完毕后，输出一个空行。

数据范围

1≤n≤1001≤n≤100,
2≤ai≤2×1092≤ai≤2×109

输入样例：

2
6
8

输出样例：

2 1
3 1

2 3
* */
public class P2 {
    static BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    final static int N=100010;

    static void scan()throws Exception{

    }
    public static void main(String[]args)throws Exception{
           int n=Integer.parseInt(br.readLine());
           while(n-->0){
                int x=Integer.parseInt(br.readLine());
                for(int i=2;i<=x/i;i++){
                    if(x%i==0){
                        int s=0;
                        while(x%i==0){
                            x/=i;
                            s++;
                        }
                        System.out.println(i+" "+s);
                    }
                }
                if(x>1)System.out.println(x+" "+1);
                System.out.println();
           }
    }
}
